package cn.springboot.osbulkparts.dao.warehouse;

import cn.springboot.osbulkparts.common.entity.CommonEntity;
import cn.springboot.osbulkparts.entity.MPackingDetailsInfoEntity;
import cn.springboot.osbulkparts.entity.TStockInfoEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

@Mapper
public interface MPackingDetailsInfoDao {
    int insert(MPackingDetailsInfoEntity record);

    int insertSelective(MPackingDetailsInfoEntity record);

    int updateByPrimaryKeySelective(MPackingDetailsInfoEntity record);

    List<MPackingDetailsInfoEntity>selectPackingDetailsInfoList(MPackingDetailsInfoEntity record);

    /**用于删除的公共方法*/
    int deliverReceivingDelete(@Param("ids") String[] ids, @Param("updateUser") String updateUser, @Param("isDelete") String isDelete);

    /**批量修改*/
    int updatePackingDetailsList(@Param("commonEntity")CommonEntity commonEntity,@Param("updateUser") String updateUser);

    int importExcelData(List<MPackingDetailsInfoEntity> records);

    //根据物料号 查找物料信息
    List<MPackingDetailsInfoEntity> getPackingDetailsInfoBymaterialCode(String materialCode);
    
    List<MPackingDetailsInfoEntity> selectSubBoxReport(MPackingDetailsInfoEntity record);
    
    List<MPackingDetailsInfoEntity> selectTotalSubBoxReport(MPackingDetailsInfoEntity record);
    
    List<MPackingDetailsInfoEntity> selectSumSubBoxReport(MPackingDetailsInfoEntity record);
    
    // 箱票明细报表
    List<MPackingDetailsInfoEntity> selectPackingList(MPackingDetailsInfoEntity record);

    //
    List<MPackingDetailsInfoEntity> selectPackingListByMaterialCode(MPackingDetailsInfoEntity record);
    
    // 附件订单计划
    List<MPackingDetailsInfoEntity> selectAttachList(MPackingDetailsInfoEntity record);
    
    // 提单样本报表
    List<MPackingDetailsInfoEntity> selectBookingList(MPackingDetailsInfoEntity record);

    //提单样本（铁路）  billOfLadingSample.xlsx
    List<MPackingDetailsInfoEntity> selectPackingList4BillOfLadingSample(MPackingDetailsInfoEntity record);
    
}